package com.huyi.common.datasource;

/**
 * 各自线程独有内存空间
 * 
 * @ClassName DatabaseContextHolder
 * @Description 判断当前数据源是否存在（上下文）
 * @author shengli.hu
 */
public class DataSourceContextHolder {

    /**
     * 使用ThreadLocal维护变量，ThreadLocal为每个使用该变量的线程提供独立的变量副本，
     *  所以每一个线程都可以独立地改变自己的副本，而不会影响其它线程所对应的副本。
     */
	private static final ThreadLocal<String> contextHolder = new ThreadLocal<String>();
	
	public static void setDataSourceType(String type){
		contextHolder.set(type);
	}
	
	public static String getDataSourceType(){
		return contextHolder.get();
	}
	
	/**
	 * 移除数据源
	 */
    public static void clearDataSourceType() {
        contextHolder.remove();
    }
}
